package main

import (
	"errors"
	"fmt"
)

type wrapError struct {
	msg string
	err error
}

func (e *wrapError) Error() string {
	return e.msg
}

func (e *wrapError) UnWrap() error {
	return e.err
}

func main() {
	err := errors.New("原始异常")
	// 使用时，必须使用%w格式动词，且参数只能是一个有效的 error
	wrapErr := fmt.Errorf("错误：%w", err)
	fmt.Println(wrapErr)

}
